package nancal.mp.db.mongo.table

import java.io.*
import nbcp.base.db.*
import nbcp.base.comm.*
import nbcp.base.extend.*
import nbcp.base.enums.*
import nbcp.base.utils.*
import nbcp.myoql.db.*
import nbcp.myoql.db.comm.*
import nbcp.myoql.db.enums.*
import nbcp.myoql.db.mongo.*
import nbcp.myoql.db.mongo.base.*
import nbcp.myoql.db.mongo.component.*
import org.slf4j.LoggerFactory
import org.springframework.stereotype.*



class DeployLanguageSettingMeta(private val parentPropertyName: String): MongoColumnName() {
    constructor(value: MongoColumnName) : this(value.toString()) {}
    val language = mongoColumnJoin(this.parentPropertyName, "language")
    val affinitySettings = AffinitySettingMeta(mongoColumnJoin(this.parentPropertyName, "affinitySettings"))
    val preBuild = mongoColumnJoin(this.parentPropertyName, "preBuild")
    val postBuild = mongoColumnJoin(this.parentPropertyName, "postBuild")
    val preDeploy = mongoColumnJoin(this.parentPropertyName, "preDeploy")
    val postDeploy = mongoColumnJoin(this.parentPropertyName, "postDeploy")
    val dockerfile = mongoColumnJoin(this.parentPropertyName, "dockerfile")
    val deploymentYaml = mongoColumnJoin(this.parentPropertyName, "deploymentYaml")
    val serviceYaml = mongoColumnJoin(this.parentPropertyName, "serviceYaml")
    val languageVersionSettings = LanguageVersionSettingMeta(mongoColumnJoin(this.parentPropertyName, "languageVersionSettings"))
    override fun toString(): String {
        return mongoColumnJoin(this.parentPropertyName).toString()
    }
}

